package com.tubi.test.extend.test3;

/*
- 继承好处
  - 提高了代码的复用性(多个类相同的成员可以放到同一个类中)
  - 提高了代码的维护性(如果方法的代码需要修改，修改一处即可)
- 继承弊端
  - 继承让类与类之间产生了关系，类的耦合性增强了，当父类发生变化时子类实现也不得不跟着变化，削弱了子类的独立性
- 继承的应用场景：
  - 使用继承，需要考虑类与类之间是否存在is..a的关系，不能盲目使用继承
    - is..a的关系：谁是谁的一种，例如：老师和学生是人的一种，那人就是父类，学生和老师就是子类

    在子类方法中访问一个变量，采用的是就近原则。

    1. 子类局部范围找
    2. 子类成员范围找
    3. 父类成员范围找
    4. 如果都没有就报错(不考虑父亲的父亲…)
 */
public class Zi extends Fu {
    //子父出现重名变量  会跟随就近原则
    int a = 20;
    public void method() {
        int a = 30 ; //局部优先
        System.out.println(a); //30

        //打印本类成员变量
        System.out.println(this.a);//20    this 调用的本类的相关成员

        //打印父类成员变量  要打印父类成员变量要用super. 调用
        System.out.println(super.a);//10  super 调用的父类的相关成员
    }
}
